## https://www.cnblogs.com/wulaoer/p/5119944.html
# 我试着能不能做出来，结果2成概率可以在2分钟想出有效的方法  我真菜！--！
# 题是做过类似的，就是一眼无法知道什么是素数、斐波那契数列。。。   然后质数(又称素数), 吐血，你名字太多了，我还得网上查一下

'''
需求：判断一个数加100是一个数的完全平方数，加168是另一个数的完全平方数。
思路：在10万以内判断，先将该数加上100后再开方，再将该数加上268后再开方，如果开方后的结果满足如下条件，即是结果。请看具体分析：
'''
import math
for i in range(100000):
    x = int(math.sqrt(i + 100))
    y = int(math.sqrt(i + 168))
    if (x * x == i + 100) and (y * y == i + 168):
        print(i)


'''
质数    使用while
'''
n = int(input("请输入一个数字：").strip())
i=2   # i=0 or i=1 return false
while i< n :
    if n%i==0:
        print('不是质数')
        break
    i += 1
else:
    print("是质数")